package com.alks.entity.data.entity;

import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

import java.io.Serializable;
import java.math.BigDecimal;
import java.time.LocalDate;
import java.time.LocalDateTime;

/**
 * <p>
 * 
 * </p>
 *
 * @author Tan
 * @since 2024-06-26
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@TableName("PC_SALARY_NEW")
@ApiModel(value="PcSalaryNew对象", description="")
public class PcSalaryNew implements Serializable {

    private static final long serialVersionUID = 1L;

    private String companyId;

    @ApiModelProperty("月份")
    private String yyyymm;

    @ApiModelProperty("工号")
    private String workerId;

    @ApiModelProperty("姓名")
    private String name;

    @ApiModelProperty("身份证")
    private String idNo;

    private String factory;

    @ApiModelProperty("部门代码")
    private String deptNo;

    @ApiModelProperty("部门名称")
    private String deptName;

    @ApiModelProperty("职务")
    private String position;

    @ApiModelProperty("进厂日期")
    private LocalDate dateIn;

    private LocalDateTime regularDate;

    @ApiModelProperty("离职日期")
    private LocalDate delDate;

    @ApiModelProperty("离职原因")
    private String delReason;

    private String isDel;

    @ApiModelProperty("请假分钟")
    private BigDecimal delDays;

    @ApiModelProperty(value = "自然天数")
    private Integer attendance;

    @ApiModelProperty("出勤天数")
    private BigDecimal attendanceAct;

    @ApiModelProperty(value = "公休天数")
    private Integer attendanceOver;

    @ApiModelProperty("旷工分钟")
    private BigDecimal overTime;

    @ApiModelProperty(value = "迟到次数")
    private BigDecimal nsTime;

    @ApiModelProperty(value = "夫妻房补贴")
    private BigDecimal houseP;

    @ApiModelProperty(value = "厂服厂牌费用")
    private BigDecimal clothesM;

    @ApiModelProperty(value = "迟到漏打卡")
    private BigDecimal mealM;

    @ApiModelProperty(value = "水电扣款")
    private BigDecimal waterEleM;

    @ApiModelProperty(value = "社医保")
    private BigDecimal unionM;

    @ApiModelProperty(value = "卫生费扣款")
    private BigDecimal healthM;

    @ApiModelProperty(value = "基本工资")
    private BigDecimal basicSalary;

    @ApiModelProperty(value = "计时工资")
    private BigDecimal positionAlw;

    @ApiModelProperty(value = "补贴")
    private BigDecimal minSalary;

    @ApiModelProperty(value = "保底开始月份")
    private String minYyyymm;

    @ApiModelProperty(value = "银行卡号")
    private String bankCardId;

    @ApiModelProperty(value = "件资")
    private BigDecimal prodSalary;

    private BigDecimal deptOwAlw;

    private BigDecimal deptOtAlw;

    private BigDecimal deptNsAlw;

    private BigDecimal owAlw;

    private BigDecimal otAlw;

    private BigDecimal nightShiftTime;

    private BigDecimal nsAlw;

    private BigDecimal kpiAlw;

    private BigDecimal rtnAlw;

    private BigDecimal prodAlw;

    private BigDecimal inAlw;

    @ApiModelProperty("小计")
    private BigDecimal leaveAlw;

    @ApiModelProperty("补发")
    private BigDecimal injuryAlw;

    @ApiModelProperty("奖励")
    private BigDecimal allowance;

    @ApiModelProperty("小计")
    private BigDecimal minusM;

    private BigDecimal suppM;

    @ApiModelProperty("倒欠工资")
    private BigDecimal waterM;

    @ApiModelProperty("旷工扣款")
    private BigDecimal absenceM;

    @ApiModelProperty("个税")
    private BigDecimal taxM;

    @ApiModelProperty("个人借款")
    private BigDecimal repayM;

    @ApiModelProperty("备注")
    private String remark;

    private BigDecimal mealP;

    private BigDecimal fullAttendance;

    private BigDecimal workingYear;

    private BigDecimal wyAlw;

    private BigDecimal salary;

    @ApiModelProperty("实发工资")
    private BigDecimal salaryAct;

    private String sysUser;

    private LocalDateTime sysDate;

    private String updateUser;

    private LocalDateTime updateDate;

    @ApiModelProperty("工种")
    private String workType;

    @ApiModelProperty("计时/计件")
    private String calcType;

    private BigDecimal lateTimes;

    private String sex;

    @ApiModelProperty(value = "保底结束月份")
    private String minYyyymm2;

    @ApiModelProperty(value = "其他乐捐")
    private BigDecimal otherM;

    @ApiModelProperty(value = "绩效工资")
    private BigDecimal salaryAlw;

    @ApiModelProperty(value = "上一级部门代码")
    private String pDeptNo;

    @ApiModelProperty(value = "上一级部门名称")
    private String pDeptName;

    @ApiModelProperty(value = "有满勤奖所需出勤天数（满勤奖并不是一定要满勤）")
    private BigDecimal attendanceDays;

    @ApiModelProperty(value = "伙食补贴所需出勤天数")
    private BigDecimal mealDays;

    @ApiModelProperty(value = "超勤奖金按工资算")
    private String salaryFlag;

    @ApiModelProperty(value = "什么时候加的")
    private BigDecimal kpiBonus;

    @ApiModelProperty(value = "介绍费")
    private BigDecimal introduceBonus;

    @ApiModelProperty(value = "超产奖")
    private BigDecimal opAlw;

    private String bankCardUser;

    private String bankCardName;

    @ApiModelProperty("计件工资")
    private BigDecimal positionAlw2;

    private String workChgFlag;

    @ApiModelProperty("加班工资")
    private BigDecimal overSalary;

    @ApiModelProperty("电话号码")
    private String mobileNo;

    @ApiModelProperty("停车费")
    private BigDecimal carFee;

}
